// 模拟用户数据存储
const users = [
  {
    id: 1,
    phone: '13800138000',
    name: '张三',
    points: 1500,
    createdAt: '2023-01-15'
  }
];

// 获取用户积分
const getUserPoints = (req, res) => {
  try {
    const { userId } = req.params;
    
    // 查找用户
    const user = users.find(u => u.id == userId);
    if (!user) {
      return res.status(404).json({
        message: '用户不存在',
        code: 404
      });
    }
    
    res.json({
      message: '获取用户积分成功',
      code: 200,
      data: {
        points: user.points
      }
    });
  } catch (error) {
    console.error('获取用户积分错误:', error);
    res.status(500).json({
      message: '服务器内部错误',
      code: 500
    });
  }
};

// 兑换积分
const redeemPoints = (req, res) => {
  try {
    const { userId, points, item } = req.body;
    
    // 验证参数
    if (!userId || !points || !item) {
      return res.status(400).json({
        message: '用户ID、积分数额和兑换物品不能为空',
        code: 400
      });
    }
    
    // 查找用户
    const user = users.find(u => u.id == userId);
    if (!user) {
      return res.status(404).json({
        message: '用户不存在',
        code: 404
      });
    }
    
    // 检查积分是否足够
    if (user.points < points) {
      return res.status(400).json({
        message: '积分不足',
        code: 400
      });
    }
    
    // 扣除积分
    user.points -= points;
    
    res.json({
      message: '积分兑换成功',
      code: 200,
      data: {
        remainingPoints: user.points
      }
    });
  } catch (error) {
    console.error('积分兑换错误:', error);
    res.status(500).json({
      message: '服务器内部错误',
      code: 500
    });
  }
};

module.exports = {
  getUserPoints,
  redeemPoints
};